package com.xnew.user.service;

import com.xnew.bean.common.IndvUserInfo;
import com.xnew.bean.common.SysUserInfo;
import com.xnew.utils.DataInput;
import com.xnew.utils.DataOutput;

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;

public interface IndvUserInfoService {
    DataOutput indvUserAdd(IndvUserInfo indvUserInfo, HttpServletRequest request);

    IndvUserInfo queryIndvUser(String indvUserNo, HttpServletRequest request);

    DataOutput indvUserUpdate(IndvUserInfo indvUserInfo, HttpServletRequest request) throws Exception;
    //void deleteIndvUser(String userInfoNo,String perUserNo);
    DataOutput deleteIndvUser(String userInfoNo,String perUserNo,String openId,HttpServletRequest request) throws Exception;
    DataOutput updateUserState(String userInfoNo,String State) throws Exception;
    void deleteIndvUser(String perUserNo, HttpServletRequest request);

    /**
     * 获取当前部门信息
     * @param userInfo
     * @return
     */
    List<Map<String, String>> getCurrentDeptInfo(SysUserInfo userInfo);


    /**
     * 查询角色用户列表
     * @param input
     * @return
     */
    List<SysUserInfo> querySysRoleUserList(DataInput input);

    /**
     * 查询个人用户所属部门
     * @param userInfo
     * @return
     */
    List<Map<String,Object>> queryIndvUserDept(SysUserInfo userInfo);
}
